//#define ILRuntime

using UnityEngine;

namespace UFrame
{

    public interface IAwake
    {
        void Awake();
    }

    public interface IOnEnable
    {
        void OnEnable();
    }
    public interface IStart
    {
        void Start();
    }
    public interface IFixedUpdate
    {
        void FixedUpdate();
    }
    public interface IUpdate
    {
        void Update();
    }
    public interface IOnDisable
    {
        void OnDisable();
    }

    public interface IOnDestroy
    {
        void OnDestroy();
    }



    /// <summary>
    /// 假装是MonoBehaviour
    /// </summary>
    public class PLMonoBehaviour
    {
        public GameObject gameObject;
        public Transform transform;
        public string name;

        public virtual void Awake()
        {

        }

        public virtual void OnEnable()
        {

        }

        public virtual void Start()
        {

        }

        public virtual void FixedUpdate()
        {
        }

        public virtual void Update()
        {

        }

        public virtual void OnDisable()
        {

        }

        public virtual void OnDestroy()
        {

        }
    }




}
